﻿
using System;
using System.Runtime.Serialization;
using V82;
using V82.Перечисления;//Ссылка;
namespace V82.Перечисления//Ссылка
{
	[DataContract]
	public enum СпособыРасчетаСебестоимостиВФормах
	{
		[NonSerialized]
		ПустаяСсылка = - 1,
		[EnumMember(Value = "{\"Ссылка\":\"a50014dc-15da-46d1-b7bb-c75150cb4126\", \"Представление\":\"ПоДаннымУправленческогоУчета\"}")]
		ПоДаннымУправленческогоУчета = 0,//По данным управленческого учета
		[EnumMember(Value = "{\"Ссылка\":\"3f4aa5f9-4cd8-4c85-9f86-bd6e21b72e06\", \"Представление\":\"ПоДаннымБухгалтерскогоУчета\"}")]
		ПоДаннымБухгалтерскогоУчета = 1,//По данным бухгалтерского учета
	}
	public static partial class СпособыРасчетаСебестоимостиВФормах_Значения//:ПеречислениеСсылка
	{
		public static readonly Guid ПоДаннымУправленческогоУчета = new Guid("51c7bbb7-cb50-2641-46d1-15daa50014dc");//По данным управленческого учета
		public static readonly Guid ПоДаннымБухгалтерскогоУчета = new Guid("6ebd869f-b721-062e-4c85-4cd83f4aa5f9");//По данным бухгалтерского учета
		public static СпособыРасчетаСебестоимостиВФормах Получить(this СпособыРасчетаСебестоимостиВФормах Значение, byte[] Ссылка)
		{
			return Получить(Значение, new Guid(Ссылка));
		}
		public static СпособыРасчетаСебестоимостиВФормах Получить(this СпособыРасчетаСебестоимостиВФормах Значение, Guid Ссылка)
		{
			if(Ссылка == ПоДаннымУправленческогоУчета)
			{
				return СпособыРасчетаСебестоимостиВФормах.ПоДаннымУправленческогоУчета;
			}
			else if(Ссылка == ПоДаннымБухгалтерскогоУчета)
			{
				return СпособыРасчетаСебестоимостиВФормах.ПоДаннымБухгалтерскогоУчета;
			}
			return СпособыРасчетаСебестоимостиВФормах.ПустаяСсылка;
		}
		public static byte[] Ключ(this СпособыРасчетаСебестоимостиВФормах Значение)
		{
			return Ссылка(Значение).ToByteArray();
		}
		public static Guid Ссылка(this СпособыРасчетаСебестоимостиВФормах Значение)
		{
			switch (Значение)
			{
				case СпособыРасчетаСебестоимостиВФормах.ПоДаннымУправленческогоУчета: return ПоДаннымУправленческогоУчета;
				case СпособыРасчетаСебестоимостиВФормах.ПоДаннымБухгалтерскогоУчета: return ПоДаннымБухгалтерскогоУчета;
			}
			return Guid.Empty;
		}
	}
}